var webSocket ;
// if(myBrowser()!="IE"){
// 	webSocket =
// 	new WebSocket('ws://localhost:1920');
// 	console.log(webSocket);

// 	webSocket.onerror = function(event) {
// 	alert("连接错误");
// 	onError(event)
// };

// 	webSocket.onopen = function(event) {
// 	//alert("open"+event.data);
// 	//console.log(event);

// 	};

// webSocket.onclose = function(event) {
// alert("服务不存在或者被关闭");
// 	//  onClose(event);

// };

// 	webSocket.onmessage = function(event) {
// 	onMessage(event)
// };
// }

function initWeb(){
  // var webSocket ;
  console.log("aaa");
  if(myBrowser()!="IE"){
    webSocket =
      new WebSocket('ws://localhost:1920');
    console.log(webSocket);

    webSocket.onerror = function(event) {
      alert("连接错误");
      onError(event)
    };

    webSocket.onopen = function(event) {
      //alert("open"+event.data);
      //console.log(event);

    };

    webSocket.onclose = function(event) {
      alert("服务不存在或者被关闭");
      //  onClose(event);

    };

    webSocket.onmessage = function(event) {
      onMessage(event)
    };
  }
  console.log("bbb");
  // return webSocket;
}


function myBrowser(){

  var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
  console.log(userAgent);
  console.log("after userAgent");
  var isOpera = userAgent.indexOf("Opera") > -1;
  if (isOpera) {
    return "Opera"
  } //判断是否Opera浏览器
  else if (userAgent.indexOf("Firefox") > -1) {
    return "FF";
  } //判断是否Firefox浏览器
  else if (userAgent.indexOf("Edge") > -1) {
    return "Edge";
  } 	//判断是否Safari浏览器
  else if (userAgent.indexOf("Chrome") > -1){
    return "Chrome";
  }
  else if (userAgent.indexOf("Safari") > -1) {
    return "Safari";
  }
  else{
    return "IE";
  } //判断是否IE浏览器
}


function onMessage(event)
{
  console.log("onMessage");
  // console.log(event.data);
  var ret=event.data;
  var obj = JSON.parse(ret);

  if(obj.type == 0)
  {
    if(obj.ret == 0)
      alert("设置成功");
    else
      alert("设置失败");
  }

  if(obj.type==27)//视频预览
  {
    document.getElementById('video').src ="data:image/jpeg;base64,"+obj.data;
  }
  if(obj.type==28)//关闭摄像头
  {
    if(obj.ret == 0)
      alert("关闭成功");
    else
      alert("关闭失败");
  }
  if(obj.type==29)//  拍照
  {
    document.getElementById('photo').src ="data:image/jpeg;base64,"+obj.data;
    // this.options.img.src="data:image/jpeg;base64,"+obj.data;
    document.getElementById( 'photo' ).name = "hiPhoto.jpg" ;
  }
  if(obj.type==33)//  旋转
  {
    if(obj.ret == 0)
      //document.getElementById('photo').src ="data:image/jpeg;base64,"+obj.data;
      //else
      alert("设置成功");
  }
  if(obj.type==34)//  裁边
  {

    alert("设置裁边");
  }
  if(obj.type==36)//  身份证
  {

    if(obj.ret==0){
      alert(obj.data);
      // <!-- var  getIDCard; -->
      // 	<!-- getIDCard =obj.data; -->
    }
  }
  if(obj.type==37)//  sn
  {

    if(obj.ret==0){
      alert(obj.data);
      // <!-- var  getIDCard; -->
      // 	<!-- getIDCard =obj.data; -->
    }
  }
  if(obj.type==38)//  ver
  {

    if(obj.ret==0){
      alert(obj.data);
    }
  }
  if(obj.type==41)//  pdf
  {

    if(obj.ret==0){
      alert(obj.data);
    }
  }
  if(obj.type==65)    //base64
  {
    if(obj.ret==0){

      var  getphtotbase64;
      getphtotbase64 =obj.data;

      // <!-- alert(obj.data); -->

      // <!-- document.getElementById('photo').src ="data:image/jpeg;base64,"+obj.data;		 -->
      // <!-- document.getElementById("PhotoBase64").value = obj.data; -->
      document.getElementById("PhotoBase64").src = "data:image/jpeg;base64,"+obj.data;;

    }
    else{
      alert("NULL");
    }
  }

}



//gwq自带
function GWQ_TakePhoto()
{
  console.log("拍照1")
  if(myBrowser()=="IE"){
    var ret=GWQ.GWQ_TakePhoto();
    alert(ret);
  }
  else{
    var json = {};
    json.type=29;
    var jsonStr = JSON.stringify(json);
    webSocket.send(jsonStr);
    console.log(jsonStr);
  }
  console.log("拍照2")
}


function OnAfterCall(ErrorCode)
{
  if(ErrorCode==0)
  {
    alert("成功");
  }
  else if(ErrorCode==-1)
  {
    alert("参数错误");
  }
  else if (ErrorCode==-2)
  {
    alert("超时");
  }
  else if(ErrorCode==-3)
  {
    alert("设备连接错误");
  }
  else if(ErrorCode==-4)
  {
    alert("发送数据失败");
  }
  else if(ErrorCode==-5)
  {
    alert("读取数据失败");
  }
  else if(ErrorCode==-6)
  {
    alert("文件操作失败");
  }
  else if(ErrorCode==-7)
  {
    alert("设备返回错误信息");
  }
  else if(ErrorCode==-9)
  {
    alert("取消");
  }
  else
  {
    alert("失败，返回错误码为"+ErrorCode);
  }
}



function InItCamera(info)
{
  console.log("打开副摄像头1");
  var GWQ_GetVerType=             0
  console.log("before send");
  if(myBrowser()=="IE"){
    var ret=GWQ.InItCamera(info);
    alert(ret);
  }
  else{
    var json = {};
    json.type=GWQ_GetVerType;
    json.info = info;
    var jsonStr = JSON.stringify(json);
    webSocket.send(jsonStr);
    // console.log(jsonStr);
    console.log("打开副摄像头1.5");
  }
  console.log("打开副摄像头2");
  console.log(jsonStr);
}


function GWQ_StartPreview(type)
{
  console.log("开始浏览1")
  if(myBrowser()=="IE"){
    var ret=GWQ.GWQ_StartPreview(1);
    OnAfterCall(ret);
  }
  else{
    var json = {};
    json.type=27;
    var jsonStr = JSON.stringify(json);
    webSocket.send(jsonStr);
    console.log("开始浏览1.5");
  }
  console.log("开始浏览2")
}


function Base64ToFile(Base64,Filename)
{
	if(myBrowser()=="IE"){
		var ret=GWQ.Base64ToFile(Base64,Filename);
		//OnAfterCall(ret);
	}
	else{
		var json = {};
		json.type=16;
		json.Base64=Base64;
		json.Filename=Filename;
		var jsonStr = JSON.stringify(json);
		webSocket.send(jsonStr);
	}
}


export {
  initWeb, myBrowser, onMessage, GWQ_TakePhoto, OnAfterCall, InItCamera, GWQ_StartPreview, Base64ToFile
}




